home *** CD-ROM | disk | FTP | other *** search
- INTRODUCTION
-
- Sizer reports the size of selected disk objects (including
- subdirectories). It reports the number of bytes in all plain files and the
- number of blocks occupied by files and directories. It is intended for the
- Workbench user who wants to know if there is room to drag-copy one or more
- icons.
-
- I wrote Sizer for three reasons. First, I wanted it for my own use.
- Second, I wanted to learn how to use the Workbench startup module. Third, I
- wanted to learn how to examine the contents of directories using Examine()
- and ExNext().
-
-
- INSTRUCTIONS
-
- Sizer works only from the Workbench. If started from the CLI it will
- terminate without doing anything.
-
- Select Sizer and all the objects you want sized using extended
- selection. Click once on the Sizer icon. Hold down the shift key and
- select the objects you want sized. Double-click on the last one. Sizer
- will open a window and show you the number of bytes and blocks. While Sizer
- is working the numbers will keep changing. When it finishes it will write
- "Program completed. Select close gadget to exit." into the window. If the
- program fails for some reason it will indicate "Program failed. Select
- close gadget to exit."
-
- While Sizer is running you can cancel it by selecting the close gadget.
- Sizer will stop executing and close the window.
-
-
- WARNINGS
-
- Sizer calculates blocks for the old file system (OFS) and the fast file
- system (FFS). Information about the file systems' overhead is coded in the
- program. Sizer's block counts do not apply to any other file systems.
-
- Because the Amiga is a multitasking system, the size of a file can
- change at any time. Keep this in mind when using the information Sizer
- gives you.
-
-
- DISTRIBUTION
-
- Sizer is in the public domain.
-
-
- AUTHOR
-
- --Fabbian G. Dufoe, III
- 350 Ling-A-Mor Terrace South | GEnie: F.DUFOE3
- St. Petersburg, Florida 33705 | internet: fgd3%nifty@tct.com
- 813-823-2350 | uucp: ...tct!deep6!nifty!fgd3
-
-
- REVISION HISTORY
-
- 15 October 1991: Initial release, version 1.0.
-
- 18 May 1992: Version 1.1
- If address 0 contained a non-zero value Sizer would fail when it
- encountered a directory within a directory. The problem was a function
- call that passed a NULL pointer instead of a pointer to a NULL string.
- It was a dumb mistake, but it's been fixed.
-
- 13 June 1992: Version 1.2
- Sizer used the number of blocks in the FileInfoBlock (fib_NumBlocks) to
- accumulate its block count. There are several problems with that
- approach. First, directories on disk have fib_NumBlocks set to 0
- (for directories on RAM: it is 1) but directories take up one block of
- disk space each. Second, the number of blocks required for a given file
- may vary depending on whether the file is written to an old file system
- (OFS) or fast file system (FFS) disk. The block size is different.
- Knowing how many FFS blocks a disk object occupies doesn't tell you
- (easily) how many OFS blocks it will require.
-
- By calculating the blocks from the block size and the number of bytes in
- the file I solved both problems. Sizer now reports the number of blocks
- correctly whether the object being sized is on disk or RAM:. Sizer gives
- you both the number of OFS blocks and FFS blocks.
-
-